package com.example.vaccine.service;

import com.example.vaccine.VO.PageVO;
import com.example.vaccine.VO.ResultVO;
import com.example.vaccine.entity.Users;
import com.baomidou.mybatisplus.extension.service.IService;
import com.example.vaccine.form.LoginForm;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletRequest;
import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author Coisn
 * @since 2025-06-12
 */
public interface UsersService extends IService<Users> {
    List<Users> getCheckers();
    PageVO getUserPage(String name, String role, int page, int size);
     ResultVO login(LoginForm loginForm, HttpServletRequest request);
     void sendEmailReminderByTaskId(Integer taskId) throws Exception;

    // 上传头像并返回相对访问路径
    String uploadAvatar(MultipartFile file) throws Exception;

    String getAvatarByUserId(Integer userId);

    boolean updateAvatar(Integer userId, String avatarPath);

    ResultVO handleAvatarUpload(Integer userId, MultipartFile file);
}
